# 在python中所有的类都是object的子类

# 人类
class Person:
    def __init__(self, name, age, sex):
        self.name = name
        self.age = age
        self.sex = sex

    def print(self):
        print(f"Person({self.name},{self.age},{self.sex})")

    def print_info(self):
        print(f"Person({self.name},{self.age},{self.sex})")


# 继承父类（会将父类的方法和属性继承过来）
class Student(Person):
    def __init__(self, id, name, age, sex, clazz):
        # 调用父类的初始化方法
        super().__init__(name, age, sex)

        # 定义自己的属性
        self.id = id
        self.clazz = clazz

    # 重写父类的方法
    def print_info(self):
        print(f"Student({self.id},{self.name},{self.age},{self.sex},{self.clazz})")


# 创建子类的对象
student = Student("001", "张三", 23, "男", "文科一班")
# 在子类对象中可以使用父类的方法
student.print()
student.print_info()
print(student)
